atomlist[i] = gdk_x11_get_xatom_by_name_for_display (display, atoms[i]);
XChangeProperty (GDK_DISPLAY_XDISPLAY (display),
- GDK_WINDOW_XID (context->source_window),
+ GDK_WINDOW_XID (context_x11->ipc_window),
gdk_x11_get_xatom_by_name_for_display (display, "XdndTypeList"),
XA_ATOM, 32, PropModeReplace,
(guchar *)atomlist, n_atoms);
}
XChangeProperty (GDK_DISPLAY_XDISPLAY (display),
- GDK_WINDOW_XID (context->source_window),
+ GDK_WINDOW_XID (context_x11->ipc_window),
gdk_x11_get_xatom_by_name_for_display (display, "XdndActionList"),
XA_ATOM, 32, PropModeReplace,
(guchar *)atomlist, n_atoms);
xev.xclient.window = context_x11->drop_xid
? context_x11->drop_xid
: GDK_WINDOW_XID (context->dest_window);
- xev.xclient.data.l[0] = GDK_WINDOW_XID (context->source_window);
+ xev.xclient.data.l[0] = GDK_WINDOW_XID (context_x11->ipc_window);
xev.xclient.data.l[1] = (context_x11->version << 24); /* version */
xev.xclient.data.l[2] = 0;
xev.xclient.data.l[3] = 0;
GDK_NOTE(DND,
g_message ("Sending enter source window %#lx XDND protocol version %d\n",
- GDK_WINDOW_XID (context->source_window), context_x11->version));
+ GDK_WINDOW_XID (context_x11->ipc_window), context_x11->version));
atoms = gdk_content_formats_get_mime_types (context->formats, &n_atoms);
if (n_atoms > 3)
xev.xclient.window = context_x11->drop_xid
? context_x11->drop_xid
: GDK_WINDOW_XID (context->dest_window);
- xev.xclient.data.l[0] = GDK_WINDOW_XID (context->source_window);
+ xev.xclient.data.l[0] = GDK_WINDOW_XID (context_x11->ipc_window);
xev.xclient.data.l[1] = 0;
xev.xclient.data.l[2] = 0;
xev.xclient.data.l[3] = 0;
xev.xclient.window = context_x11->drop_xid
? context_x11->drop_xid
: GDK_WINDOW_XID (context->dest_window);
- xev.xclient.data.l[0] = GDK_WINDOW_XID (context->source_window);
+ xev.xclient.data.l[0] = GDK_WINDOW_XID (context_x11->ipc_window);
xev.xclient.data.l[1] = 0;
xev.xclient.data.l[2] = time;
xev.xclient.data.l[3] = 0;
xev.xclient.window = context_x11->drop_xid
? context_x11->drop_xid
: GDK_WINDOW_XID (context->dest_window);
- xev.xclient.data.l[0] = GDK_WINDOW_XID (context->source_window);
+ xev.xclient.data.l[0] = GDK_WINDOW_XID (context_x11->ipc_window);
xev.xclient.data.l[1] = 0;
xev.xclient.data.l[2] = (x_root << 16) | y_root;
xev.xclient.data.l[3] = time;
x11_context = GDK_X11_DRAG_CONTEXT (context);
context->is_source = TRUE;
- context->source_window = window;
- g_object_ref (window);
g_signal_connect (display, "xevent", G_CALLBACK (gdk_x11_drag_context_xevent), context);
gdk_window_set_group (x11_context->ipc_window, window);
gdk_window_show (x11_context->ipc_window);
+ context->source_window = x11_context->ipc_window;
+ g_object_ref (context->source_window);
+
x11_context->drag_window = create_drag_window (display);
if (!drag_context_grab (context))